以前对apache研究的不够深刻,甚至连模块的动态以及静态都搞不清楚。查了资料,基本上明了。
静态,顾名思义就是apache本身不用干什么,不用动就可以使用模块。这就需要把模块都编译进apache的httpd文件中。
动态,需要apache去调用这个模块,用哪个调用哪个,这种方式的前提是,需要告诉apache这些模块在哪里。
现在apache版本都普遍都是2.0或者2.2了,针对apache2.x如何动态以及静态编译?
对于2.x版本来讲,编译apache的时候,只要加上 –enable-mods-shared=all 就可以动态的编译全部模块。安装完成后会在 apache2/modules 目录下多了很多模块文件。
如果想静态加载所有模块,编译参数改成 –enable-mods=all